The present disclosure relates generally to delivering and presenting multimedia content.
Streaming is a technique for delivering multimedia content to end-users. Streaming involves continuously displaying media content to a user while the content is being delivered to the user. Streaming can be used to deliver various types of digital media to end-users. Streaming media can include, for example, recorded (e.g., recorded video) and/or live media content (e.g., video from a user's webcam).
Publishers can create content for streaming by encoding content (e.g., audio and video) with one or more codecs. A streaming media server can then receive and transmit created streams over a network (e.g., the Internet) to a client device. The client device can include a client-side player that decompresses and displays streams for an end-user.
Streaming media environments can use virtual machines to present streaming content to end-users. A virtual machine is a self-contained operating environment that allows programs to be run within the virtual machine itself as though the virtual machine were a stand-alone computer. Virtual machines can be programs themselves, embedded within an operating system or other software application, or otherwise installed on a computer. One example of a virtual machine is the ADOBE® FLASH® Player runtime (available from Adobe Systems Incorporated of San Jose, Calif.), which can be used to run FLASH® files including ACTIONSCRIPT® and SWF files (e.g., files formatted according to the SWF File Format Specification (Version 10) as published by Adobe Systems Incorporated of San Jose, Calif. (http://www.adobe.com/devnet/swf/pdf/swf_file_format_spec_v10.pdf)).
Customized image viewers and video players can run on virtual machines and present streaming media to end-users. These customized applications can be used to facilitate web applications in providing interactive rich media content, Applications configured to execute on the ADOBE® FLASH® platform can be included in SWF files, which can be processed by client-side SWF player software. The media content itself can be kept separate from the SWF file and can be loaded into a SWF for playback at runtime.
Playlists can be used during streaming. A playlist can include a list of streams queued up for playback. The streams in the playlist can be streamed to the user and played from a source (e.g., the streaming media server) one after the other in the order they are queued. Streams from a playlist can be presented to end-users through customized image viewers, video players and audio players, which can be associated with various other applications.